1. Technical Field
The present invention is related to a method and system to be utilized in data communications. In particular, the present invention is related to a method and system to be utilized in data communications involving at least one data communications network.
2. Description of the Related Art
Data communications is the transfer of data from one or more sources to one or more sinks that is accomplished (a) via one or more data links between the one or more sources and one or more sinks and (b) according to a protocol. Weik, Communications Standard Dictionary 203 (3rd ed. 1996). A data link is the means of connecting facilities or equipment at one location to facilities or equipment at another location for the purpose of transmitting and receiving data. Weik, Communications Standard Dictionary 206 (3rd ed. 1996). A protocol, in communications, computer, data processing, and control systems, is a set of formal conventions that govern the format and control the interactions between two communicating functional elements in order to achieve efficient and understandable communications. Weik, Communications Standard Dictionary 770 (3rd ed. 1996).
A data communications network is the interconnection of three or more communicating entities (i.e., data sources and/or sinks) over one or more data links. Weik, Communications Standard Dictionary 618 (3rd ed. 1996).
Data communications networks connect and allow communications between multiple data sources and sinks over one or more data links. The concept of a data link includes the media connecting one or more data sources to one or more data sinks, as well as the data communications equipment utilizing the media. The data communications networks utilize protocols to control the interactions between data sources and sinks communicating over the one or more data links. Thus, it follows that such protocols must take into account the data communications requirements of data sources and sinks desiring communication over the one or more data links, and the nature of the underlying one or more data links themselves, in order to ensure that the requirements of such data sources and sinks are met.
Of necessity, data communication protocols must take into account both the technology of the underlying data links and the data source and sink communications requirements. The underlying data links, data source, and data sink communications requirements give rise to a high degree of complexity.
It has been found that the complexity can be reduced to a manageable level by modularizing the concepts of data communication, as reflected in data communication network protocols. One such well-known modular approach is the International Standards Organization""s Open Systems Interconnections (OSI) 7 layer (or level) model.
Those skilled in the art will recognize that data communication protocols exist which do not follow the OSI model exactly. However, insofar as the OSI model is a conceptual model dealing with the problem of network communications, non-OSI models still provide the same functionalities of the OSI model, although the terminology utilized in such protocols may be different from OSI terminology. Notwithstanding the foregoing, the OSI model still provides the most straightforward conceptual approach to the problems involved in network communication, and thus the OSI 7 layer model will be utilized, below, to discuss communications problems which exist in the art. Furthermore, while the OSI model does have seven layers, the first, second, and third levels will be most relevant to the detailed description to follow.
OSI Level 1 is the physical level, and deals with the true electrical signals and electrical circuits that are utilized to carry information. OSI Level 2 is known as the data link layer (or service layer interface/media access control layer when reference is made to a LAN context) and is a conceptual level whereby access to the physical level (OSI Level 1) is actually controlled and coordinated. A good example of OSI Level 2 is LAN protocol, which coordinates and controls access to the physical layer (OSI Level 1), or media over which actual transmission occurs, by use of data frames (packages of binary data) to which are appended headers containing a source address and a destination address. In LAN terminology, these addresses are referred to as media access control (MAC) addresses.
OSI Level 2 deals with access and control of actual media over which data is transmitted. Physical constraints often put an upper limit on the number of stations that can be physically connected (at OSI Level 1). OSI Level 2 defines ways that multiple discontinuous OSI Level 1, or physical, segments can be stitched together to achieve what appears to be one large coherent (or contiguous) network. The OSI Level 2 achieves this by managing xe2x80x9cbridgesxe2x80x9d between physical segments. In Ethernet LAN, these bridges are termed transparent bridges, and in token-ring LAN these bridges are termed source-route bridges.
Conceptually one step removed from OSI Level 2 is OSI Level 3, the network layer. While OSI Level 2 frees network designers from dealing with the actual physical connections of the underlying networks, OSI Level 2 logic must still take into account the actual physical structure of the underlying physically connected networks.
Conceptually, network designers tend to prefer to work with networks that have a certain defined logical structure, which may be different from the underlying physical connections of the network. Consequently, OSI Level 3 has been developed. OSI Level 3 allows network designers to treat what may, in fact, be a tremendously large number of non-contiguous network segments strung together by OSI Level 2 entities as one large homogenous network with a logical structure different than that of the underlying physical network (which must be dealt with by the OSI Level 2 logic). That is, OSI Level 3 allows network designers to create a conceptual network with a defined conceptual structure, and to thereafter refer to one network level protocol defined set of addresses (e.g., using OSI Level 3 logic to define and operate a logical token ring structure over an actual network that may, from a physical standpoint, have the structure of an Ethernet network).
The foregoing is achieved by defining the conceptual network at OSI Level 3. Thereafter, OSI Level 3 entities exchange the defined conceptual network addresses with OSI Level 2 entities, which actually figure out where such network addresses are to be located on a true physical network. Thus, OSI Level 3 working with and through OSI Level 2, allows network designers to impose logical structure onto what may look like physical chaos.
OSI Level 2 entities typically achieve the foregoing by xe2x80x9cmappingxe2x80x9d the OSI Level 3 network addresses onto OSI Level 2 service layer addresses. Thus, when an OSI Level 3 entity passes a network layer address to an OSI Level 2 entity, the OSI Level 2 entity typically uses a look-up table to convert the OSI Level 3 address into its OSI Level 2 equivalent.
Refer now to FIG. 1. FIG. 1 shows a high-level schematic view of the physical connections of networked computer environment within which one embodiment of the present invention can function. Shown in FIG. 1 are computers 100-132.
Shown are computers 100-116 which are physically connected in ring structures. Computers 102-108 are physically connected in ring structure 152. Computers 108-116 are physically connected in ring structure 154.
Computers 100, 102, 132 are physically connected via shared media 156. Computers 132, 130, 120, 118 are physically connected via shared media 158. Computers 120, 128, 126, 124, 122 are physically connected via shared media 160.
As can be seen from FIG. 1, networked computers can present a dizzying array of connections and a high degree of complexity. Furthermore, those skilled in the art will recognize that in practice the number of interconnected computers is virtually infinite (present networks contain computers numbering into the millions) and, likewise, the number of physical interconnections between individual computers can also number into the millions (present networks have interconnects numbering into the millions). The question arises as to how this welter of confusion can be made to yield an efficient and robust communications system.
In the main, network engineers have been able to tame this complexity by using software/firmware/hardware to impose a logically coherent structure onto the physically jumbled networks. One way in which this is done is illustrated in FIG. 2; however, those skilled in the art will recognize that there are many other ways of imposing such logical order.
Refer now to FIG. 2. FIG. 2 depicts a schematic view of a logical token-ring topology assigned to the network of FIG. 1 by a designer. Shown are computers 100-132. However, in FIG. 2 it is shown that via the use of hardware/firmware/software, a logical network topology has been created in which computers 100-132 form the logical construct token ring LAN 200. That is, the underlying physical structures of FIG. 1 are still extant, but the logical construct token ring LAN 200 allows network designers/administrators to ignore that underlying structure and treat computers 100-132 xe2x80x9cas ifxe2x80x9d they were in fact members of one continuous token ring 200.
In order to manage the conceptual network (e.g., the OSI Level 3 logical construct) of FIG. 2, it is necessary for the network devices (e.g., computers and their associated peripherals) to have been assigned network addresses by a network manager. Furthermore, as devices come on-line and off-line, these network addresses must be adjusted such that the network management is kept efficient and current. Furthermore, those skilled in the art will recognize that tracking such network addresses is tedious and is generally done under the current state of the art on an ad hoc basis by a network administrator.
Even given the power of OSI Level 3 to create a large virtual network using disparate physical structures and OSI Level 2 bridges, situations often arise where circumstances or network design factors give rise to the need for more than one OSI Level 3 virtual network. In such cases, OSI Level 3 routers are utilized to seamlessly stitch together more than one OSI Level 3 networks.
OSI Level 3 routers usually serve as the interconnection point between at least two OSI Level 3 virtual networks. However, in addition to their function as OSI Level 3 routers, such network nodes also often do xe2x80x9cdouble duty,xe2x80x9d serving as a network point of penetration for one or more users. In practical terms, what this means is that such OSI Level 3 network routers are called upon to both pass data up (e.g. into the OSI Level 4 Transport level) the protocol stack to end users, as well as buffer and retransmit data when data received is to be routed through the OSI Level 3 router, because the network address indicates that the data is destined for another node on another network.
It is not uncommon for a tremendous number of OSI Level 3 virtual networks to be strung together by use of several network routers. It is further not uncommon for the need to arise for communications between data sources and sinks separated from each other by several OSI Level 3 networks and routers. Consequently, in such cases multiple networks must be interconnected by multiple network routers in order for effective communication to take place between the data source and sink.
When more than one OSI Level 3 virtual networks are strung together, the network management problems, noted above, for managing the network addresses are still present. However, the increased number of networks makes the management of the network addresses that much more complex. For example, coordinating and ensuring that redundant network names and addresses across one network can prove to be a daunting task, and when many networks are possible a coherent solution is often not possible under the current state of the art.
Restated, as communications networks continue to increase in both size and complexity, the task of creating and maintaining the associated network configuration data becomes increasingly difficult and error prone.
A major source of this difficulty lies in the fact that devices comprising these networks are configured individually, one at a time. The typical configuration tool does not provide any support for managing the configuration for groups of devices. This means that the coordination of configuration data among multiple devices is left to the end-user. A key aspect of coordinating the configurations among different devices in the same network is the management of critical configuration resources such as IP addresses.
In addition to the foregoing, those skilled in the art will recognize that new (non-OSI) types of network protocols (such as Asynchronous Transfer Mode (ATM), or Synchronous Optical Network (SONET)) have emerged that do not, in their native form, support the standard well-developed OSI Level 2 and 3 protocols. However, due to the tremendous installed base of OSI-type networks (e.g., Wide Area Networks (WANs), Local Area Networks (LANs), Internet Protocol Networks), such non-OSI networks have been forced to provide emulation of OSI-type networks. Typically, such emulation has been provided by providing an xe2x80x9coverlayxe2x80x9d of software and computational equipment which support the well-defined protocols by accepting data units and doing very fast translations between the disparate protocols. Such operations are virtually always performed at both endpoints of a communication connection as well as at the intermediate nodes between the endpoints. Such emulation overlays merely compound the previously discussed problems associated with managing the network resources.
It is therefore apparent that a need exists for a method and system, to be utilized in data communications involving at least one data communications network, which provide dynamic and coherent management of network resources.
It is therefore one object of the present invention to provide a method and system to be utilized in data communications.
It is therefore another object of the present invention to provide a method and system to be utilized in data communications involving at least one data communications network.
It is yet still another object of the present invention to provide a method and system, to be utilized in data communications involving at least one data communications network, such that the method and system provide efficient, coherent, and dynamic management of the resources of the data communications network.
The foregoing objects are achieved as is now described. Provided are a method and system for use within at least one network. The method and system achieve their objects via computing equipment engineered to do the following: define one or more pools of network resources; and assign network resources on the basis of the one or more pools of network resources.
The above as well as additional objects, features, and advantages of the present invention will become apparent in the following detailed written description.